“Network congestion” occurs when the demand for bandwidth outstrips the supply. Optimally, a network would have sufficient bandwidth to support any rate of throughput required by its users. However, most networks do not have constant levels of bandwidth usage; aggregate demand for bandwidth typically varies from extreme to extreme in accordance with both cyclic factors as well as random events. It is therefore seldom cost/effective to maintain a level of reserve bandwidth capacity that would be sufficient to address any and all resource demands, in any and all situations. Accordingly, most networks suffer at some time or another from network congestion. As a network becomes congested, its users may typically experience a combination of lengthened response times, increased error rates, dropped connections, etc.
Network congestion does not necessary involve the entire network. A given area may become congested without necessarily impacting on the rest of the network. Such partial, or “local” congestion is generally more likely to occur when the network's resources are statically assigned to a given area and cannot be easily reassigned to compensate for congestion elsewhere.
For example, mobile communications networks, which typically employ “cellular” coverage, are particularly susceptible to local congestion. In such networks, the geographic area served by the mobile network is divided up into cells, and each cell is serviced by a mobile station that provides connectivity to whichever subscribers happen to be in the cell at a given time. Multiple subscribers simultaneously attempting to use the same mobile station can congest a cell, even though the rest of the network may have excess capacity.
The number of subscribers necessary to congest a cell is a function of how many there are and how much bandwidth each requests from the network. Typically, the total bandwidth available to a mobile station in a 3GPP-HSPA network is 7.2 Mbps. A subscriber downloading media content will typically use approximately 400-1000 Kbps in bandwidth. Accordingly, depending on the circumstances and protocol overhead as few as four or five subscribers actively downloading media content can congest a single cell. In fact, when using “misbehaving” peer-to-peer protocols that are optimized to grab as much bandwidth as possible, a single subscriber can use up all of the available bandwidth in a given cell.
A number of media delivery optimization (MDO) methods are used for combating network congestion caused by the downloading of media content. One such method is “transcoding”. Transcoding includes reformatting the media content to be downloaded via the network to a different, presumably more efficient encoding technique that requires less bandwidth. For example, a media file identified as being in MPEG2 format may be converted to H264 format which requires less bandwidth for transmission while maintaining more or less the same quality.
Another such method is “transrating” which entails reducing the total media content bit rate by either manipulating the frame rate, and/or reducing the number of frames without changing the encoding technique. Transrating thus effectively reduces the quality of the media stream. However as with transcoding, the extent to which it is used determines whether the reduction in quality is acceptable and/or even perceived by the end user.
“Traffic shaping” is also commonly used to prevent congestion from developing. Traffic shaping entails the enforcement of policies for bandwidth usage. Examples of such policies include: minimum bit rates, maximum bit rates, relative prioritization, etc.
Another congestion reduction method is buffer management or “Time-to-view (TTV) manipulation”. TTV manipulation entails matching the download rate via the network to that of the viewing rate (e.g. the streaming rate according to which the media content is ultimately played on the subscriber's communication device). This method is predicated on the fact that many devices are capable of downloading media content faster than they can play it, thus artificially raising the demand for bandwidth while they download, especially in cases where the media content ultimately isn't used in its entirety (e.g., viewing only 10 seconds of a 3 minute video clip while most of it was already “buffered” due to fast a download rate).
Caching is used to reduce the overhead required for repeated delivery of the same media content, often in combination with either transcoding or transrating. A copy of the media content may be cached on the mobile network, thus reducing the necessity of repeated transactions to download it from the source, typically an external content server. When combined with transcoding or transrating, the stored copy may be in altered format thus saving the overhead of reformatting the content for each individual request.
Media link adaptation (MLA) involves a transport protocol in which link conditions (between subscriber and the network) are sensed and used to signal a media content server to change and adapt bit rate accordingly. One example of an MLA is HTTP Live. HTTP Live's protocol calls for participating content servers to maintain multiple versions of the original content in varying sizes and formats. The specific version supplied by the server for download is determined in accordance with the link conditions.